package co.edu.unal.research.contentprovider.ui.contentassist.antlr.internal; 

import java.io.InputStream;
import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
import co.edu.unal.research.contentprovider.services.ContentProviderDslGrammarAccess;



import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings("all")
public class InternalContentProviderDslParser extends AbstractInternalContentAssistParser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'configuration'", "'{'", "'authority'", "'base_path'", "'package'", "'}'", "'table'", "'primary key'", "'('", "')'", "'column'", "':'", "'type'", "'integer'", "'real'", "'text'", "'blob'"
    };
    public static final int RULE_ID=5;
    public static final int T__27=27;
    public static final int T__26=26;
    public static final int T__25=25;
    public static final int T__24=24;
    public static final int T__23=23;
    public static final int T__22=22;
    public static final int RULE_ANY_OTHER=10;
    public static final int T__21=21;
    public static final int T__20=20;
    public static final int RULE_SL_COMMENT=8;
    public static final int EOF=-1;
    public static final int RULE_ML_COMMENT=7;
    public static final int T__19=19;
    public static final int RULE_STRING=4;
    public static final int T__16=16;
    public static final int T__15=15;
    public static final int T__18=18;
    public static final int T__17=17;
    public static final int T__12=12;
    public static final int T__11=11;
    public static final int T__14=14;
    public static final int T__13=13;
    public static final int RULE_INT=6;
    public static final int RULE_WS=9;

    // delegates
    // delegators


        public InternalContentProviderDslParser(TokenStream input) {
            this(input, new RecognizerSharedState());
        }
        public InternalContentProviderDslParser(TokenStream input, RecognizerSharedState state) {
            super(input, state);
             
        }
        

    public String[] getTokenNames() { return InternalContentProviderDslParser.tokenNames; }
    public String getGrammarFileName() { return "../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g"; }


     
     	private ContentProviderDslGrammarAccess grammarAccess;
     	
        public void setGrammarAccess(ContentProviderDslGrammarAccess grammarAccess) {
        	this.grammarAccess = grammarAccess;
        }
        
        @Override
        protected Grammar getGrammar() {
        	return grammarAccess.getGrammar();
        }
        
        @Override
        protected String getValueForTokenName(String tokenName) {
        	return tokenName;
        }




    // $ANTLR start "entryRuleContentProvider"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:60:1: entryRuleContentProvider : ruleContentProvider EOF ;
    public final void entryRuleContentProvider() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:61:1: ( ruleContentProvider EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:62:1: ruleContentProvider EOF
            {
             before(grammarAccess.getContentProviderRule()); 
            pushFollow(FOLLOW_ruleContentProvider_in_entryRuleContentProvider61);
            ruleContentProvider();

            state._fsp--;

             after(grammarAccess.getContentProviderRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleContentProvider68); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleContentProvider"


    // $ANTLR start "ruleContentProvider"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:69:1: ruleContentProvider : ( ( rule__ContentProvider__Group__0 ) ) ;
    public final void ruleContentProvider() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:73:2: ( ( ( rule__ContentProvider__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:74:1: ( ( rule__ContentProvider__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:74:1: ( ( rule__ContentProvider__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:75:1: ( rule__ContentProvider__Group__0 )
            {
             before(grammarAccess.getContentProviderAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:76:1: ( rule__ContentProvider__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:76:2: rule__ContentProvider__Group__0
            {
            pushFollow(FOLLOW_rule__ContentProvider__Group__0_in_ruleContentProvider94);
            rule__ContentProvider__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getContentProviderAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleContentProvider"


    // $ANTLR start "entryRuleConfiguration"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:88:1: entryRuleConfiguration : ruleConfiguration EOF ;
    public final void entryRuleConfiguration() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:89:1: ( ruleConfiguration EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:90:1: ruleConfiguration EOF
            {
             before(grammarAccess.getConfigurationRule()); 
            pushFollow(FOLLOW_ruleConfiguration_in_entryRuleConfiguration121);
            ruleConfiguration();

            state._fsp--;

             after(grammarAccess.getConfigurationRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleConfiguration128); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleConfiguration"


    // $ANTLR start "ruleConfiguration"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:97:1: ruleConfiguration : ( ( rule__Configuration__Group__0 ) ) ;
    public final void ruleConfiguration() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:101:2: ( ( ( rule__Configuration__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:102:1: ( ( rule__Configuration__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:102:1: ( ( rule__Configuration__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:103:1: ( rule__Configuration__Group__0 )
            {
             before(grammarAccess.getConfigurationAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:104:1: ( rule__Configuration__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:104:2: rule__Configuration__Group__0
            {
            pushFollow(FOLLOW_rule__Configuration__Group__0_in_ruleConfiguration154);
            rule__Configuration__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getConfigurationAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleConfiguration"


    // $ANTLR start "entryRuleTable"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:116:1: entryRuleTable : ruleTable EOF ;
    public final void entryRuleTable() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:117:1: ( ruleTable EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:118:1: ruleTable EOF
            {
             before(grammarAccess.getTableRule()); 
            pushFollow(FOLLOW_ruleTable_in_entryRuleTable181);
            ruleTable();

            state._fsp--;

             after(grammarAccess.getTableRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleTable188); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleTable"


    // $ANTLR start "ruleTable"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:125:1: ruleTable : ( ( rule__Table__Group__0 ) ) ;
    public final void ruleTable() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:129:2: ( ( ( rule__Table__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:130:1: ( ( rule__Table__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:130:1: ( ( rule__Table__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:131:1: ( rule__Table__Group__0 )
            {
             before(grammarAccess.getTableAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:132:1: ( rule__Table__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:132:2: rule__Table__Group__0
            {
            pushFollow(FOLLOW_rule__Table__Group__0_in_ruleTable214);
            rule__Table__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getTableAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleTable"


    // $ANTLR start "entryRuleTableColumn"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:144:1: entryRuleTableColumn : ruleTableColumn EOF ;
    public final void entryRuleTableColumn() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:145:1: ( ruleTableColumn EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:146:1: ruleTableColumn EOF
            {
             before(grammarAccess.getTableColumnRule()); 
            pushFollow(FOLLOW_ruleTableColumn_in_entryRuleTableColumn241);
            ruleTableColumn();

            state._fsp--;

             after(grammarAccess.getTableColumnRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleTableColumn248); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleTableColumn"


    // $ANTLR start "ruleTableColumn"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:153:1: ruleTableColumn : ( ( rule__TableColumn__Group__0 ) ) ;
    public final void ruleTableColumn() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:157:2: ( ( ( rule__TableColumn__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:158:1: ( ( rule__TableColumn__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:158:1: ( ( rule__TableColumn__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:159:1: ( rule__TableColumn__Group__0 )
            {
             before(grammarAccess.getTableColumnAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:160:1: ( rule__TableColumn__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:160:2: rule__TableColumn__Group__0
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__0_in_ruleTableColumn274);
            rule__TableColumn__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getTableColumnAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleTableColumn"


    // $ANTLR start "entryRuleAdditionalFeature"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:172:1: entryRuleAdditionalFeature : ruleAdditionalFeature EOF ;
    public final void entryRuleAdditionalFeature() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:173:1: ( ruleAdditionalFeature EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:174:1: ruleAdditionalFeature EOF
            {
             before(grammarAccess.getAdditionalFeatureRule()); 
            pushFollow(FOLLOW_ruleAdditionalFeature_in_entryRuleAdditionalFeature301);
            ruleAdditionalFeature();

            state._fsp--;

             after(grammarAccess.getAdditionalFeatureRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAdditionalFeature308); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAdditionalFeature"


    // $ANTLR start "ruleAdditionalFeature"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:181:1: ruleAdditionalFeature : ( ( rule__AdditionalFeature__NameAssignment ) ) ;
    public final void ruleAdditionalFeature() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:185:2: ( ( ( rule__AdditionalFeature__NameAssignment ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:186:1: ( ( rule__AdditionalFeature__NameAssignment ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:186:1: ( ( rule__AdditionalFeature__NameAssignment ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:187:1: ( rule__AdditionalFeature__NameAssignment )
            {
             before(grammarAccess.getAdditionalFeatureAccess().getNameAssignment()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:188:1: ( rule__AdditionalFeature__NameAssignment )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:188:2: rule__AdditionalFeature__NameAssignment
            {
            pushFollow(FOLLOW_rule__AdditionalFeature__NameAssignment_in_ruleAdditionalFeature334);
            rule__AdditionalFeature__NameAssignment();

            state._fsp--;


            }

             after(grammarAccess.getAdditionalFeatureAccess().getNameAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAdditionalFeature"


    // $ANTLR start "entryRuleColumnType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:200:1: entryRuleColumnType : ruleColumnType EOF ;
    public final void entryRuleColumnType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:201:1: ( ruleColumnType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:202:1: ruleColumnType EOF
            {
             before(grammarAccess.getColumnTypeRule()); 
            pushFollow(FOLLOW_ruleColumnType_in_entryRuleColumnType361);
            ruleColumnType();

            state._fsp--;

             after(grammarAccess.getColumnTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleColumnType368); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleColumnType"


    // $ANTLR start "ruleColumnType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:209:1: ruleColumnType : ( ( rule__ColumnType__Alternatives ) ) ;
    public final void ruleColumnType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:213:2: ( ( ( rule__ColumnType__Alternatives ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:214:1: ( ( rule__ColumnType__Alternatives ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:214:1: ( ( rule__ColumnType__Alternatives ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:215:1: ( rule__ColumnType__Alternatives )
            {
             before(grammarAccess.getColumnTypeAccess().getAlternatives()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:216:1: ( rule__ColumnType__Alternatives )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:216:2: rule__ColumnType__Alternatives
            {
            pushFollow(FOLLOW_rule__ColumnType__Alternatives_in_ruleColumnType394);
            rule__ColumnType__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getColumnTypeAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleColumnType"


    // $ANTLR start "entryRuleTableWrap"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:228:1: entryRuleTableWrap : ruleTableWrap EOF ;
    public final void entryRuleTableWrap() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:229:1: ( ruleTableWrap EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:230:1: ruleTableWrap EOF
            {
             before(grammarAccess.getTableWrapRule()); 
            pushFollow(FOLLOW_ruleTableWrap_in_entryRuleTableWrap421);
            ruleTableWrap();

            state._fsp--;

             after(grammarAccess.getTableWrapRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleTableWrap428); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleTableWrap"


    // $ANTLR start "ruleTableWrap"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:237:1: ruleTableWrap : ( ( rule__TableWrap__TableAssignment ) ) ;
    public final void ruleTableWrap() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:241:2: ( ( ( rule__TableWrap__TableAssignment ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:242:1: ( ( rule__TableWrap__TableAssignment ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:242:1: ( ( rule__TableWrap__TableAssignment ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:243:1: ( rule__TableWrap__TableAssignment )
            {
             before(grammarAccess.getTableWrapAccess().getTableAssignment()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:244:1: ( rule__TableWrap__TableAssignment )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:244:2: rule__TableWrap__TableAssignment
            {
            pushFollow(FOLLOW_rule__TableWrap__TableAssignment_in_ruleTableWrap454);
            rule__TableWrap__TableAssignment();

            state._fsp--;


            }

             after(grammarAccess.getTableWrapAccess().getTableAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleTableWrap"


    // $ANTLR start "entryRuleDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:256:1: entryRuleDataType : ruleDataType EOF ;
    public final void entryRuleDataType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:257:1: ( ruleDataType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:258:1: ruleDataType EOF
            {
             before(grammarAccess.getDataTypeRule()); 
            pushFollow(FOLLOW_ruleDataType_in_entryRuleDataType481);
            ruleDataType();

            state._fsp--;

             after(grammarAccess.getDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDataType488); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleDataType"


    // $ANTLR start "ruleDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:265:1: ruleDataType : ( ( rule__DataType__Alternatives ) ) ;
    public final void ruleDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:269:2: ( ( ( rule__DataType__Alternatives ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:270:1: ( ( rule__DataType__Alternatives ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:270:1: ( ( rule__DataType__Alternatives ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:271:1: ( rule__DataType__Alternatives )
            {
             before(grammarAccess.getDataTypeAccess().getAlternatives()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:272:1: ( rule__DataType__Alternatives )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:272:2: rule__DataType__Alternatives
            {
            pushFollow(FOLLOW_rule__DataType__Alternatives_in_ruleDataType514);
            rule__DataType__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getDataTypeAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleDataType"


    // $ANTLR start "entryRuleIntegerDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:284:1: entryRuleIntegerDataType : ruleIntegerDataType EOF ;
    public final void entryRuleIntegerDataType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:285:1: ( ruleIntegerDataType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:286:1: ruleIntegerDataType EOF
            {
             before(grammarAccess.getIntegerDataTypeRule()); 
            pushFollow(FOLLOW_ruleIntegerDataType_in_entryRuleIntegerDataType541);
            ruleIntegerDataType();

            state._fsp--;

             after(grammarAccess.getIntegerDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleIntegerDataType548); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleIntegerDataType"


    // $ANTLR start "ruleIntegerDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:293:1: ruleIntegerDataType : ( ( rule__IntegerDataType__Group__0 ) ) ;
    public final void ruleIntegerDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:297:2: ( ( ( rule__IntegerDataType__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:298:1: ( ( rule__IntegerDataType__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:298:1: ( ( rule__IntegerDataType__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:299:1: ( rule__IntegerDataType__Group__0 )
            {
             before(grammarAccess.getIntegerDataTypeAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:300:1: ( rule__IntegerDataType__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:300:2: rule__IntegerDataType__Group__0
            {
            pushFollow(FOLLOW_rule__IntegerDataType__Group__0_in_ruleIntegerDataType574);
            rule__IntegerDataType__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getIntegerDataTypeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleIntegerDataType"


    // $ANTLR start "entryRuleRealDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:312:1: entryRuleRealDataType : ruleRealDataType EOF ;
    public final void entryRuleRealDataType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:313:1: ( ruleRealDataType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:314:1: ruleRealDataType EOF
            {
             before(grammarAccess.getRealDataTypeRule()); 
            pushFollow(FOLLOW_ruleRealDataType_in_entryRuleRealDataType601);
            ruleRealDataType();

            state._fsp--;

             after(grammarAccess.getRealDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleRealDataType608); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleRealDataType"


    // $ANTLR start "ruleRealDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:321:1: ruleRealDataType : ( ( rule__RealDataType__Group__0 ) ) ;
    public final void ruleRealDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:325:2: ( ( ( rule__RealDataType__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:326:1: ( ( rule__RealDataType__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:326:1: ( ( rule__RealDataType__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:327:1: ( rule__RealDataType__Group__0 )
            {
             before(grammarAccess.getRealDataTypeAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:328:1: ( rule__RealDataType__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:328:2: rule__RealDataType__Group__0
            {
            pushFollow(FOLLOW_rule__RealDataType__Group__0_in_ruleRealDataType634);
            rule__RealDataType__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getRealDataTypeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleRealDataType"


    // $ANTLR start "entryRuleTextDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:340:1: entryRuleTextDataType : ruleTextDataType EOF ;
    public final void entryRuleTextDataType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:341:1: ( ruleTextDataType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:342:1: ruleTextDataType EOF
            {
             before(grammarAccess.getTextDataTypeRule()); 
            pushFollow(FOLLOW_ruleTextDataType_in_entryRuleTextDataType661);
            ruleTextDataType();

            state._fsp--;

             after(grammarAccess.getTextDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleTextDataType668); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleTextDataType"


    // $ANTLR start "ruleTextDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:349:1: ruleTextDataType : ( ( rule__TextDataType__Group__0 ) ) ;
    public final void ruleTextDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:353:2: ( ( ( rule__TextDataType__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:354:1: ( ( rule__TextDataType__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:354:1: ( ( rule__TextDataType__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:355:1: ( rule__TextDataType__Group__0 )
            {
             before(grammarAccess.getTextDataTypeAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:356:1: ( rule__TextDataType__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:356:2: rule__TextDataType__Group__0
            {
            pushFollow(FOLLOW_rule__TextDataType__Group__0_in_ruleTextDataType694);
            rule__TextDataType__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getTextDataTypeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleTextDataType"


    // $ANTLR start "entryRuleBlobDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:368:1: entryRuleBlobDataType : ruleBlobDataType EOF ;
    public final void entryRuleBlobDataType() throws RecognitionException {
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:369:1: ( ruleBlobDataType EOF )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:370:1: ruleBlobDataType EOF
            {
             before(grammarAccess.getBlobDataTypeRule()); 
            pushFollow(FOLLOW_ruleBlobDataType_in_entryRuleBlobDataType721);
            ruleBlobDataType();

            state._fsp--;

             after(grammarAccess.getBlobDataTypeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleBlobDataType728); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleBlobDataType"


    // $ANTLR start "ruleBlobDataType"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:377:1: ruleBlobDataType : ( ( rule__BlobDataType__Group__0 ) ) ;
    public final void ruleBlobDataType() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:381:2: ( ( ( rule__BlobDataType__Group__0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:382:1: ( ( rule__BlobDataType__Group__0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:382:1: ( ( rule__BlobDataType__Group__0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:383:1: ( rule__BlobDataType__Group__0 )
            {
             before(grammarAccess.getBlobDataTypeAccess().getGroup()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:384:1: ( rule__BlobDataType__Group__0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:384:2: rule__BlobDataType__Group__0
            {
            pushFollow(FOLLOW_rule__BlobDataType__Group__0_in_ruleBlobDataType754);
            rule__BlobDataType__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getBlobDataTypeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleBlobDataType"


    // $ANTLR start "rule__ColumnType__Alternatives"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:396:1: rule__ColumnType__Alternatives : ( ( ( rule__ColumnType__TypeAssignment_0 ) ) | ( ruleTableWrap ) );
    public final void rule__ColumnType__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:400:1: ( ( ( rule__ColumnType__TypeAssignment_0 ) ) | ( ruleTableWrap ) )
            int alt1=2;
            int LA1_0 = input.LA(1);

            if ( (LA1_0==17||(LA1_0>=24 && LA1_0<=27)) ) {
                alt1=1;
            }
            else if ( (LA1_0==RULE_ID) ) {
                alt1=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;
            }
            switch (alt1) {
                case 1 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:401:1: ( ( rule__ColumnType__TypeAssignment_0 ) )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:401:1: ( ( rule__ColumnType__TypeAssignment_0 ) )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:402:1: ( rule__ColumnType__TypeAssignment_0 )
                    {
                     before(grammarAccess.getColumnTypeAccess().getTypeAssignment_0()); 
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:403:1: ( rule__ColumnType__TypeAssignment_0 )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:403:2: rule__ColumnType__TypeAssignment_0
                    {
                    pushFollow(FOLLOW_rule__ColumnType__TypeAssignment_0_in_rule__ColumnType__Alternatives790);
                    rule__ColumnType__TypeAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getColumnTypeAccess().getTypeAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:407:6: ( ruleTableWrap )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:407:6: ( ruleTableWrap )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:408:1: ruleTableWrap
                    {
                     before(grammarAccess.getColumnTypeAccess().getTableWrapParserRuleCall_1()); 
                    pushFollow(FOLLOW_ruleTableWrap_in_rule__ColumnType__Alternatives808);
                    ruleTableWrap();

                    state._fsp--;

                     after(grammarAccess.getColumnTypeAccess().getTableWrapParserRuleCall_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ColumnType__Alternatives"


    // $ANTLR start "rule__DataType__Alternatives"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:418:1: rule__DataType__Alternatives : ( ( ruleIntegerDataType ) | ( ruleRealDataType ) | ( ruleTextDataType ) | ( ruleBlobDataType ) | ( ruleTable ) );
    public final void rule__DataType__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:422:1: ( ( ruleIntegerDataType ) | ( ruleRealDataType ) | ( ruleTextDataType ) | ( ruleBlobDataType ) | ( ruleTable ) )
            int alt2=5;
            switch ( input.LA(1) ) {
            case 24:
                {
                alt2=1;
                }
                break;
            case 25:
                {
                alt2=2;
                }
                break;
            case 26:
                {
                alt2=3;
                }
                break;
            case 27:
                {
                alt2=4;
                }
                break;
            case 17:
                {
                alt2=5;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 2, 0, input);

                throw nvae;
            }

            switch (alt2) {
                case 1 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:423:1: ( ruleIntegerDataType )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:423:1: ( ruleIntegerDataType )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:424:1: ruleIntegerDataType
                    {
                     before(grammarAccess.getDataTypeAccess().getIntegerDataTypeParserRuleCall_0()); 
                    pushFollow(FOLLOW_ruleIntegerDataType_in_rule__DataType__Alternatives840);
                    ruleIntegerDataType();

                    state._fsp--;

                     after(grammarAccess.getDataTypeAccess().getIntegerDataTypeParserRuleCall_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:429:6: ( ruleRealDataType )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:429:6: ( ruleRealDataType )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:430:1: ruleRealDataType
                    {
                     before(grammarAccess.getDataTypeAccess().getRealDataTypeParserRuleCall_1()); 
                    pushFollow(FOLLOW_ruleRealDataType_in_rule__DataType__Alternatives857);
                    ruleRealDataType();

                    state._fsp--;

                     after(grammarAccess.getDataTypeAccess().getRealDataTypeParserRuleCall_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:435:6: ( ruleTextDataType )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:435:6: ( ruleTextDataType )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:436:1: ruleTextDataType
                    {
                     before(grammarAccess.getDataTypeAccess().getTextDataTypeParserRuleCall_2()); 
                    pushFollow(FOLLOW_ruleTextDataType_in_rule__DataType__Alternatives874);
                    ruleTextDataType();

                    state._fsp--;

                     after(grammarAccess.getDataTypeAccess().getTextDataTypeParserRuleCall_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:441:6: ( ruleBlobDataType )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:441:6: ( ruleBlobDataType )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:442:1: ruleBlobDataType
                    {
                     before(grammarAccess.getDataTypeAccess().getBlobDataTypeParserRuleCall_3()); 
                    pushFollow(FOLLOW_ruleBlobDataType_in_rule__DataType__Alternatives891);
                    ruleBlobDataType();

                    state._fsp--;

                     after(grammarAccess.getDataTypeAccess().getBlobDataTypeParserRuleCall_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:447:6: ( ruleTable )
                    {
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:447:6: ( ruleTable )
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:448:1: ruleTable
                    {
                     before(grammarAccess.getDataTypeAccess().getTableParserRuleCall_4()); 
                    pushFollow(FOLLOW_ruleTable_in_rule__DataType__Alternatives908);
                    ruleTable();

                    state._fsp--;

                     after(grammarAccess.getDataTypeAccess().getTableParserRuleCall_4()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__DataType__Alternatives"


    // $ANTLR start "rule__ContentProvider__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:460:1: rule__ContentProvider__Group__0 : rule__ContentProvider__Group__0__Impl rule__ContentProvider__Group__1 ;
    public final void rule__ContentProvider__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:464:1: ( rule__ContentProvider__Group__0__Impl rule__ContentProvider__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:465:2: rule__ContentProvider__Group__0__Impl rule__ContentProvider__Group__1
            {
            pushFollow(FOLLOW_rule__ContentProvider__Group__0__Impl_in_rule__ContentProvider__Group__0938);
            rule__ContentProvider__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ContentProvider__Group__1_in_rule__ContentProvider__Group__0941);
            rule__ContentProvider__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__Group__0"


    // $ANTLR start "rule__ContentProvider__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:472:1: rule__ContentProvider__Group__0__Impl : ( ( rule__ContentProvider__ConfigAssignment_0 ) ) ;
    public final void rule__ContentProvider__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:476:1: ( ( ( rule__ContentProvider__ConfigAssignment_0 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:477:1: ( ( rule__ContentProvider__ConfigAssignment_0 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:477:1: ( ( rule__ContentProvider__ConfigAssignment_0 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:478:1: ( rule__ContentProvider__ConfigAssignment_0 )
            {
             before(grammarAccess.getContentProviderAccess().getConfigAssignment_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:479:1: ( rule__ContentProvider__ConfigAssignment_0 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:479:2: rule__ContentProvider__ConfigAssignment_0
            {
            pushFollow(FOLLOW_rule__ContentProvider__ConfigAssignment_0_in_rule__ContentProvider__Group__0__Impl968);
            rule__ContentProvider__ConfigAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getContentProviderAccess().getConfigAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__Group__0__Impl"


    // $ANTLR start "rule__ContentProvider__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:489:1: rule__ContentProvider__Group__1 : rule__ContentProvider__Group__1__Impl ;
    public final void rule__ContentProvider__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:493:1: ( rule__ContentProvider__Group__1__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:494:2: rule__ContentProvider__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__ContentProvider__Group__1__Impl_in_rule__ContentProvider__Group__1998);
            rule__ContentProvider__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__Group__1"


    // $ANTLR start "rule__ContentProvider__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:500:1: rule__ContentProvider__Group__1__Impl : ( ( ( rule__ContentProvider__TablesAssignment_1 ) ) ( ( rule__ContentProvider__TablesAssignment_1 )* ) ) ;
    public final void rule__ContentProvider__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:504:1: ( ( ( ( rule__ContentProvider__TablesAssignment_1 ) ) ( ( rule__ContentProvider__TablesAssignment_1 )* ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:505:1: ( ( ( rule__ContentProvider__TablesAssignment_1 ) ) ( ( rule__ContentProvider__TablesAssignment_1 )* ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:505:1: ( ( ( rule__ContentProvider__TablesAssignment_1 ) ) ( ( rule__ContentProvider__TablesAssignment_1 )* ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:506:1: ( ( rule__ContentProvider__TablesAssignment_1 ) ) ( ( rule__ContentProvider__TablesAssignment_1 )* )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:506:1: ( ( rule__ContentProvider__TablesAssignment_1 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:507:1: ( rule__ContentProvider__TablesAssignment_1 )
            {
             before(grammarAccess.getContentProviderAccess().getTablesAssignment_1()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:508:1: ( rule__ContentProvider__TablesAssignment_1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:508:2: rule__ContentProvider__TablesAssignment_1
            {
            pushFollow(FOLLOW_rule__ContentProvider__TablesAssignment_1_in_rule__ContentProvider__Group__1__Impl1027);
            rule__ContentProvider__TablesAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getContentProviderAccess().getTablesAssignment_1()); 

            }

            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:511:1: ( ( rule__ContentProvider__TablesAssignment_1 )* )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:512:1: ( rule__ContentProvider__TablesAssignment_1 )*
            {
             before(grammarAccess.getContentProviderAccess().getTablesAssignment_1()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:513:1: ( rule__ContentProvider__TablesAssignment_1 )*
            loop3:
            do {
                int alt3=2;
                int LA3_0 = input.LA(1);

                if ( (LA3_0==17) ) {
                    alt3=1;
                }


                switch (alt3) {
            	case 1 :
            	    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:513:2: rule__ContentProvider__TablesAssignment_1
            	    {
            	    pushFollow(FOLLOW_rule__ContentProvider__TablesAssignment_1_in_rule__ContentProvider__Group__1__Impl1039);
            	    rule__ContentProvider__TablesAssignment_1();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop3;
                }
            } while (true);

             after(grammarAccess.getContentProviderAccess().getTablesAssignment_1()); 

            }


            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__Group__1__Impl"


    // $ANTLR start "rule__Configuration__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:528:1: rule__Configuration__Group__0 : rule__Configuration__Group__0__Impl rule__Configuration__Group__1 ;
    public final void rule__Configuration__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:532:1: ( rule__Configuration__Group__0__Impl rule__Configuration__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:533:2: rule__Configuration__Group__0__Impl rule__Configuration__Group__1
            {
            pushFollow(FOLLOW_rule__Configuration__Group__0__Impl_in_rule__Configuration__Group__01076);
            rule__Configuration__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__1_in_rule__Configuration__Group__01079);
            rule__Configuration__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__0"


    // $ANTLR start "rule__Configuration__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:540:1: rule__Configuration__Group__0__Impl : ( 'configuration' ) ;
    public final void rule__Configuration__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:544:1: ( ( 'configuration' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:545:1: ( 'configuration' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:545:1: ( 'configuration' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:546:1: 'configuration'
            {
             before(grammarAccess.getConfigurationAccess().getConfigurationKeyword_0()); 
            match(input,11,FOLLOW_11_in_rule__Configuration__Group__0__Impl1107); 
             after(grammarAccess.getConfigurationAccess().getConfigurationKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__0__Impl"


    // $ANTLR start "rule__Configuration__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:559:1: rule__Configuration__Group__1 : rule__Configuration__Group__1__Impl rule__Configuration__Group__2 ;
    public final void rule__Configuration__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:563:1: ( rule__Configuration__Group__1__Impl rule__Configuration__Group__2 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:564:2: rule__Configuration__Group__1__Impl rule__Configuration__Group__2
            {
            pushFollow(FOLLOW_rule__Configuration__Group__1__Impl_in_rule__Configuration__Group__11138);
            rule__Configuration__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__2_in_rule__Configuration__Group__11141);
            rule__Configuration__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__1"


    // $ANTLR start "rule__Configuration__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:571:1: rule__Configuration__Group__1__Impl : ( '{' ) ;
    public final void rule__Configuration__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:575:1: ( ( '{' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:576:1: ( '{' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:576:1: ( '{' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:577:1: '{'
            {
             before(grammarAccess.getConfigurationAccess().getLeftCurlyBracketKeyword_1()); 
            match(input,12,FOLLOW_12_in_rule__Configuration__Group__1__Impl1169); 
             after(grammarAccess.getConfigurationAccess().getLeftCurlyBracketKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__1__Impl"


    // $ANTLR start "rule__Configuration__Group__2"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:590:1: rule__Configuration__Group__2 : rule__Configuration__Group__2__Impl rule__Configuration__Group__3 ;
    public final void rule__Configuration__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:594:1: ( rule__Configuration__Group__2__Impl rule__Configuration__Group__3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:595:2: rule__Configuration__Group__2__Impl rule__Configuration__Group__3
            {
            pushFollow(FOLLOW_rule__Configuration__Group__2__Impl_in_rule__Configuration__Group__21200);
            rule__Configuration__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__3_in_rule__Configuration__Group__21203);
            rule__Configuration__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__2"


    // $ANTLR start "rule__Configuration__Group__2__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:602:1: rule__Configuration__Group__2__Impl : ( 'authority' ) ;
    public final void rule__Configuration__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:606:1: ( ( 'authority' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:607:1: ( 'authority' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:607:1: ( 'authority' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:608:1: 'authority'
            {
             before(grammarAccess.getConfigurationAccess().getAuthorityKeyword_2()); 
            match(input,13,FOLLOW_13_in_rule__Configuration__Group__2__Impl1231); 
             after(grammarAccess.getConfigurationAccess().getAuthorityKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__2__Impl"


    // $ANTLR start "rule__Configuration__Group__3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:621:1: rule__Configuration__Group__3 : rule__Configuration__Group__3__Impl rule__Configuration__Group__4 ;
    public final void rule__Configuration__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:625:1: ( rule__Configuration__Group__3__Impl rule__Configuration__Group__4 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:626:2: rule__Configuration__Group__3__Impl rule__Configuration__Group__4
            {
            pushFollow(FOLLOW_rule__Configuration__Group__3__Impl_in_rule__Configuration__Group__31262);
            rule__Configuration__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__4_in_rule__Configuration__Group__31265);
            rule__Configuration__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__3"


    // $ANTLR start "rule__Configuration__Group__3__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:633:1: rule__Configuration__Group__3__Impl : ( ( rule__Configuration__AuthorityAssignment_3 ) ) ;
    public final void rule__Configuration__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:637:1: ( ( ( rule__Configuration__AuthorityAssignment_3 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:638:1: ( ( rule__Configuration__AuthorityAssignment_3 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:638:1: ( ( rule__Configuration__AuthorityAssignment_3 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:639:1: ( rule__Configuration__AuthorityAssignment_3 )
            {
             before(grammarAccess.getConfigurationAccess().getAuthorityAssignment_3()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:640:1: ( rule__Configuration__AuthorityAssignment_3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:640:2: rule__Configuration__AuthorityAssignment_3
            {
            pushFollow(FOLLOW_rule__Configuration__AuthorityAssignment_3_in_rule__Configuration__Group__3__Impl1292);
            rule__Configuration__AuthorityAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getConfigurationAccess().getAuthorityAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__3__Impl"


    // $ANTLR start "rule__Configuration__Group__4"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:650:1: rule__Configuration__Group__4 : rule__Configuration__Group__4__Impl rule__Configuration__Group__5 ;
    public final void rule__Configuration__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:654:1: ( rule__Configuration__Group__4__Impl rule__Configuration__Group__5 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:655:2: rule__Configuration__Group__4__Impl rule__Configuration__Group__5
            {
            pushFollow(FOLLOW_rule__Configuration__Group__4__Impl_in_rule__Configuration__Group__41322);
            rule__Configuration__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__5_in_rule__Configuration__Group__41325);
            rule__Configuration__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__4"


    // $ANTLR start "rule__Configuration__Group__4__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:662:1: rule__Configuration__Group__4__Impl : ( 'base_path' ) ;
    public final void rule__Configuration__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:666:1: ( ( 'base_path' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:667:1: ( 'base_path' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:667:1: ( 'base_path' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:668:1: 'base_path'
            {
             before(grammarAccess.getConfigurationAccess().getBase_pathKeyword_4()); 
            match(input,14,FOLLOW_14_in_rule__Configuration__Group__4__Impl1353); 
             after(grammarAccess.getConfigurationAccess().getBase_pathKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__4__Impl"


    // $ANTLR start "rule__Configuration__Group__5"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:681:1: rule__Configuration__Group__5 : rule__Configuration__Group__5__Impl rule__Configuration__Group__6 ;
    public final void rule__Configuration__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:685:1: ( rule__Configuration__Group__5__Impl rule__Configuration__Group__6 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:686:2: rule__Configuration__Group__5__Impl rule__Configuration__Group__6
            {
            pushFollow(FOLLOW_rule__Configuration__Group__5__Impl_in_rule__Configuration__Group__51384);
            rule__Configuration__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__6_in_rule__Configuration__Group__51387);
            rule__Configuration__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__5"


    // $ANTLR start "rule__Configuration__Group__5__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:693:1: rule__Configuration__Group__5__Impl : ( ( rule__Configuration__BasePathAssignment_5 ) ) ;
    public final void rule__Configuration__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:697:1: ( ( ( rule__Configuration__BasePathAssignment_5 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:698:1: ( ( rule__Configuration__BasePathAssignment_5 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:698:1: ( ( rule__Configuration__BasePathAssignment_5 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:699:1: ( rule__Configuration__BasePathAssignment_5 )
            {
             before(grammarAccess.getConfigurationAccess().getBasePathAssignment_5()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:700:1: ( rule__Configuration__BasePathAssignment_5 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:700:2: rule__Configuration__BasePathAssignment_5
            {
            pushFollow(FOLLOW_rule__Configuration__BasePathAssignment_5_in_rule__Configuration__Group__5__Impl1414);
            rule__Configuration__BasePathAssignment_5();

            state._fsp--;


            }

             after(grammarAccess.getConfigurationAccess().getBasePathAssignment_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__5__Impl"


    // $ANTLR start "rule__Configuration__Group__6"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:710:1: rule__Configuration__Group__6 : rule__Configuration__Group__6__Impl rule__Configuration__Group__7 ;
    public final void rule__Configuration__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:714:1: ( rule__Configuration__Group__6__Impl rule__Configuration__Group__7 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:715:2: rule__Configuration__Group__6__Impl rule__Configuration__Group__7
            {
            pushFollow(FOLLOW_rule__Configuration__Group__6__Impl_in_rule__Configuration__Group__61444);
            rule__Configuration__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__7_in_rule__Configuration__Group__61447);
            rule__Configuration__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__6"


    // $ANTLR start "rule__Configuration__Group__6__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:722:1: rule__Configuration__Group__6__Impl : ( 'package' ) ;
    public final void rule__Configuration__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:726:1: ( ( 'package' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:727:1: ( 'package' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:727:1: ( 'package' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:728:1: 'package'
            {
             before(grammarAccess.getConfigurationAccess().getPackageKeyword_6()); 
            match(input,15,FOLLOW_15_in_rule__Configuration__Group__6__Impl1475); 
             after(grammarAccess.getConfigurationAccess().getPackageKeyword_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__6__Impl"


    // $ANTLR start "rule__Configuration__Group__7"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:741:1: rule__Configuration__Group__7 : rule__Configuration__Group__7__Impl rule__Configuration__Group__8 ;
    public final void rule__Configuration__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:745:1: ( rule__Configuration__Group__7__Impl rule__Configuration__Group__8 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:746:2: rule__Configuration__Group__7__Impl rule__Configuration__Group__8
            {
            pushFollow(FOLLOW_rule__Configuration__Group__7__Impl_in_rule__Configuration__Group__71506);
            rule__Configuration__Group__7__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Configuration__Group__8_in_rule__Configuration__Group__71509);
            rule__Configuration__Group__8();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__7"


    // $ANTLR start "rule__Configuration__Group__7__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:753:1: rule__Configuration__Group__7__Impl : ( ( rule__Configuration__PackageNameAssignment_7 ) ) ;
    public final void rule__Configuration__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:757:1: ( ( ( rule__Configuration__PackageNameAssignment_7 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:758:1: ( ( rule__Configuration__PackageNameAssignment_7 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:758:1: ( ( rule__Configuration__PackageNameAssignment_7 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:759:1: ( rule__Configuration__PackageNameAssignment_7 )
            {
             before(grammarAccess.getConfigurationAccess().getPackageNameAssignment_7()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:760:1: ( rule__Configuration__PackageNameAssignment_7 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:760:2: rule__Configuration__PackageNameAssignment_7
            {
            pushFollow(FOLLOW_rule__Configuration__PackageNameAssignment_7_in_rule__Configuration__Group__7__Impl1536);
            rule__Configuration__PackageNameAssignment_7();

            state._fsp--;


            }

             after(grammarAccess.getConfigurationAccess().getPackageNameAssignment_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__7__Impl"


    // $ANTLR start "rule__Configuration__Group__8"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:770:1: rule__Configuration__Group__8 : rule__Configuration__Group__8__Impl ;
    public final void rule__Configuration__Group__8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:774:1: ( rule__Configuration__Group__8__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:775:2: rule__Configuration__Group__8__Impl
            {
            pushFollow(FOLLOW_rule__Configuration__Group__8__Impl_in_rule__Configuration__Group__81566);
            rule__Configuration__Group__8__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__8"


    // $ANTLR start "rule__Configuration__Group__8__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:781:1: rule__Configuration__Group__8__Impl : ( '}' ) ;
    public final void rule__Configuration__Group__8__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:785:1: ( ( '}' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:786:1: ( '}' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:786:1: ( '}' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:787:1: '}'
            {
             before(grammarAccess.getConfigurationAccess().getRightCurlyBracketKeyword_8()); 
            match(input,16,FOLLOW_16_in_rule__Configuration__Group__8__Impl1594); 
             after(grammarAccess.getConfigurationAccess().getRightCurlyBracketKeyword_8()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__Group__8__Impl"


    // $ANTLR start "rule__Table__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:818:1: rule__Table__Group__0 : rule__Table__Group__0__Impl rule__Table__Group__1 ;
    public final void rule__Table__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:822:1: ( rule__Table__Group__0__Impl rule__Table__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:823:2: rule__Table__Group__0__Impl rule__Table__Group__1
            {
            pushFollow(FOLLOW_rule__Table__Group__0__Impl_in_rule__Table__Group__01643);
            rule__Table__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group__1_in_rule__Table__Group__01646);
            rule__Table__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__0"


    // $ANTLR start "rule__Table__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:830:1: rule__Table__Group__0__Impl : ( 'table' ) ;
    public final void rule__Table__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:834:1: ( ( 'table' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:835:1: ( 'table' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:835:1: ( 'table' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:836:1: 'table'
            {
             before(grammarAccess.getTableAccess().getTableKeyword_0()); 
            match(input,17,FOLLOW_17_in_rule__Table__Group__0__Impl1674); 
             after(grammarAccess.getTableAccess().getTableKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__0__Impl"


    // $ANTLR start "rule__Table__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:849:1: rule__Table__Group__1 : rule__Table__Group__1__Impl rule__Table__Group__2 ;
    public final void rule__Table__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:853:1: ( rule__Table__Group__1__Impl rule__Table__Group__2 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:854:2: rule__Table__Group__1__Impl rule__Table__Group__2
            {
            pushFollow(FOLLOW_rule__Table__Group__1__Impl_in_rule__Table__Group__11705);
            rule__Table__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group__2_in_rule__Table__Group__11708);
            rule__Table__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__1"


    // $ANTLR start "rule__Table__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:861:1: rule__Table__Group__1__Impl : ( ( rule__Table__NameAssignment_1 ) ) ;
    public final void rule__Table__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:865:1: ( ( ( rule__Table__NameAssignment_1 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:866:1: ( ( rule__Table__NameAssignment_1 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:866:1: ( ( rule__Table__NameAssignment_1 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:867:1: ( rule__Table__NameAssignment_1 )
            {
             before(grammarAccess.getTableAccess().getNameAssignment_1()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:868:1: ( rule__Table__NameAssignment_1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:868:2: rule__Table__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Table__NameAssignment_1_in_rule__Table__Group__1__Impl1735);
            rule__Table__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getTableAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__1__Impl"


    // $ANTLR start "rule__Table__Group__2"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:878:1: rule__Table__Group__2 : rule__Table__Group__2__Impl rule__Table__Group__3 ;
    public final void rule__Table__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:882:1: ( rule__Table__Group__2__Impl rule__Table__Group__3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:883:2: rule__Table__Group__2__Impl rule__Table__Group__3
            {
            pushFollow(FOLLOW_rule__Table__Group__2__Impl_in_rule__Table__Group__21765);
            rule__Table__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group__3_in_rule__Table__Group__21768);
            rule__Table__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__2"


    // $ANTLR start "rule__Table__Group__2__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:890:1: rule__Table__Group__2__Impl : ( '{' ) ;
    public final void rule__Table__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:894:1: ( ( '{' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:895:1: ( '{' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:895:1: ( '{' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:896:1: '{'
            {
             before(grammarAccess.getTableAccess().getLeftCurlyBracketKeyword_2()); 
            match(input,12,FOLLOW_12_in_rule__Table__Group__2__Impl1796); 
             after(grammarAccess.getTableAccess().getLeftCurlyBracketKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__2__Impl"


    // $ANTLR start "rule__Table__Group__3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:909:1: rule__Table__Group__3 : rule__Table__Group__3__Impl rule__Table__Group__4 ;
    public final void rule__Table__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:913:1: ( rule__Table__Group__3__Impl rule__Table__Group__4 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:914:2: rule__Table__Group__3__Impl rule__Table__Group__4
            {
            pushFollow(FOLLOW_rule__Table__Group__3__Impl_in_rule__Table__Group__31827);
            rule__Table__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group__4_in_rule__Table__Group__31830);
            rule__Table__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__3"


    // $ANTLR start "rule__Table__Group__3__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:921:1: rule__Table__Group__3__Impl : ( ( ( rule__Table__ColumnsAssignment_3 ) ) ( ( rule__Table__ColumnsAssignment_3 )* ) ) ;
    public final void rule__Table__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:925:1: ( ( ( ( rule__Table__ColumnsAssignment_3 ) ) ( ( rule__Table__ColumnsAssignment_3 )* ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:926:1: ( ( ( rule__Table__ColumnsAssignment_3 ) ) ( ( rule__Table__ColumnsAssignment_3 )* ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:926:1: ( ( ( rule__Table__ColumnsAssignment_3 ) ) ( ( rule__Table__ColumnsAssignment_3 )* ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:927:1: ( ( rule__Table__ColumnsAssignment_3 ) ) ( ( rule__Table__ColumnsAssignment_3 )* )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:927:1: ( ( rule__Table__ColumnsAssignment_3 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:928:1: ( rule__Table__ColumnsAssignment_3 )
            {
             before(grammarAccess.getTableAccess().getColumnsAssignment_3()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:929:1: ( rule__Table__ColumnsAssignment_3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:929:2: rule__Table__ColumnsAssignment_3
            {
            pushFollow(FOLLOW_rule__Table__ColumnsAssignment_3_in_rule__Table__Group__3__Impl1859);
            rule__Table__ColumnsAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getTableAccess().getColumnsAssignment_3()); 

            }

            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:932:1: ( ( rule__Table__ColumnsAssignment_3 )* )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:933:1: ( rule__Table__ColumnsAssignment_3 )*
            {
             before(grammarAccess.getTableAccess().getColumnsAssignment_3()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:934:1: ( rule__Table__ColumnsAssignment_3 )*
            loop4:
            do {
                int alt4=2;
                int LA4_0 = input.LA(1);

                if ( (LA4_0==21) ) {
                    alt4=1;
                }


                switch (alt4) {
            	case 1 :
            	    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:934:2: rule__Table__ColumnsAssignment_3
            	    {
            	    pushFollow(FOLLOW_rule__Table__ColumnsAssignment_3_in_rule__Table__Group__3__Impl1871);
            	    rule__Table__ColumnsAssignment_3();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop4;
                }
            } while (true);

             after(grammarAccess.getTableAccess().getColumnsAssignment_3()); 

            }


            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__3__Impl"


    // $ANTLR start "rule__Table__Group__4"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:945:1: rule__Table__Group__4 : rule__Table__Group__4__Impl rule__Table__Group__5 ;
    public final void rule__Table__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:949:1: ( rule__Table__Group__4__Impl rule__Table__Group__5 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:950:2: rule__Table__Group__4__Impl rule__Table__Group__5
            {
            pushFollow(FOLLOW_rule__Table__Group__4__Impl_in_rule__Table__Group__41904);
            rule__Table__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group__5_in_rule__Table__Group__41907);
            rule__Table__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__4"


    // $ANTLR start "rule__Table__Group__4__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:957:1: rule__Table__Group__4__Impl : ( ( rule__Table__Group_4__0 )? ) ;
    public final void rule__Table__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:961:1: ( ( ( rule__Table__Group_4__0 )? ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:962:1: ( ( rule__Table__Group_4__0 )? )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:962:1: ( ( rule__Table__Group_4__0 )? )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:963:1: ( rule__Table__Group_4__0 )?
            {
             before(grammarAccess.getTableAccess().getGroup_4()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:964:1: ( rule__Table__Group_4__0 )?
            int alt5=2;
            int LA5_0 = input.LA(1);

            if ( (LA5_0==18) ) {
                alt5=1;
            }
            switch (alt5) {
                case 1 :
                    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:964:2: rule__Table__Group_4__0
                    {
                    pushFollow(FOLLOW_rule__Table__Group_4__0_in_rule__Table__Group__4__Impl1934);
                    rule__Table__Group_4__0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getTableAccess().getGroup_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__4__Impl"


    // $ANTLR start "rule__Table__Group__5"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:974:1: rule__Table__Group__5 : rule__Table__Group__5__Impl ;
    public final void rule__Table__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:978:1: ( rule__Table__Group__5__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:979:2: rule__Table__Group__5__Impl
            {
            pushFollow(FOLLOW_rule__Table__Group__5__Impl_in_rule__Table__Group__51965);
            rule__Table__Group__5__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__5"


    // $ANTLR start "rule__Table__Group__5__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:985:1: rule__Table__Group__5__Impl : ( '}' ) ;
    public final void rule__Table__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:989:1: ( ( '}' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:990:1: ( '}' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:990:1: ( '}' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:991:1: '}'
            {
             before(grammarAccess.getTableAccess().getRightCurlyBracketKeyword_5()); 
            match(input,16,FOLLOW_16_in_rule__Table__Group__5__Impl1993); 
             after(grammarAccess.getTableAccess().getRightCurlyBracketKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group__5__Impl"


    // $ANTLR start "rule__Table__Group_4__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1016:1: rule__Table__Group_4__0 : rule__Table__Group_4__0__Impl rule__Table__Group_4__1 ;
    public final void rule__Table__Group_4__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1020:1: ( rule__Table__Group_4__0__Impl rule__Table__Group_4__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1021:2: rule__Table__Group_4__0__Impl rule__Table__Group_4__1
            {
            pushFollow(FOLLOW_rule__Table__Group_4__0__Impl_in_rule__Table__Group_4__02036);
            rule__Table__Group_4__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group_4__1_in_rule__Table__Group_4__02039);
            rule__Table__Group_4__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__0"


    // $ANTLR start "rule__Table__Group_4__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1028:1: rule__Table__Group_4__0__Impl : ( 'primary key' ) ;
    public final void rule__Table__Group_4__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1032:1: ( ( 'primary key' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1033:1: ( 'primary key' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1033:1: ( 'primary key' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1034:1: 'primary key'
            {
             before(grammarAccess.getTableAccess().getPrimaryKeyKeyword_4_0()); 
            match(input,18,FOLLOW_18_in_rule__Table__Group_4__0__Impl2067); 
             after(grammarAccess.getTableAccess().getPrimaryKeyKeyword_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__0__Impl"


    // $ANTLR start "rule__Table__Group_4__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1047:1: rule__Table__Group_4__1 : rule__Table__Group_4__1__Impl rule__Table__Group_4__2 ;
    public final void rule__Table__Group_4__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1051:1: ( rule__Table__Group_4__1__Impl rule__Table__Group_4__2 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1052:2: rule__Table__Group_4__1__Impl rule__Table__Group_4__2
            {
            pushFollow(FOLLOW_rule__Table__Group_4__1__Impl_in_rule__Table__Group_4__12098);
            rule__Table__Group_4__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group_4__2_in_rule__Table__Group_4__12101);
            rule__Table__Group_4__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__1"


    // $ANTLR start "rule__Table__Group_4__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1059:1: rule__Table__Group_4__1__Impl : ( '(' ) ;
    public final void rule__Table__Group_4__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1063:1: ( ( '(' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1064:1: ( '(' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1064:1: ( '(' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1065:1: '('
            {
             before(grammarAccess.getTableAccess().getLeftParenthesisKeyword_4_1()); 
            match(input,19,FOLLOW_19_in_rule__Table__Group_4__1__Impl2129); 
             after(grammarAccess.getTableAccess().getLeftParenthesisKeyword_4_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__1__Impl"


    // $ANTLR start "rule__Table__Group_4__2"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1078:1: rule__Table__Group_4__2 : rule__Table__Group_4__2__Impl rule__Table__Group_4__3 ;
    public final void rule__Table__Group_4__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1082:1: ( rule__Table__Group_4__2__Impl rule__Table__Group_4__3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1083:2: rule__Table__Group_4__2__Impl rule__Table__Group_4__3
            {
            pushFollow(FOLLOW_rule__Table__Group_4__2__Impl_in_rule__Table__Group_4__22160);
            rule__Table__Group_4__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Table__Group_4__3_in_rule__Table__Group_4__22163);
            rule__Table__Group_4__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__2"


    // $ANTLR start "rule__Table__Group_4__2__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1090:1: rule__Table__Group_4__2__Impl : ( ( rule__Table__PrimaryKeyAssignment_4_2 ) ) ;
    public final void rule__Table__Group_4__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1094:1: ( ( ( rule__Table__PrimaryKeyAssignment_4_2 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1095:1: ( ( rule__Table__PrimaryKeyAssignment_4_2 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1095:1: ( ( rule__Table__PrimaryKeyAssignment_4_2 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1096:1: ( rule__Table__PrimaryKeyAssignment_4_2 )
            {
             before(grammarAccess.getTableAccess().getPrimaryKeyAssignment_4_2()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1097:1: ( rule__Table__PrimaryKeyAssignment_4_2 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1097:2: rule__Table__PrimaryKeyAssignment_4_2
            {
            pushFollow(FOLLOW_rule__Table__PrimaryKeyAssignment_4_2_in_rule__Table__Group_4__2__Impl2190);
            rule__Table__PrimaryKeyAssignment_4_2();

            state._fsp--;


            }

             after(grammarAccess.getTableAccess().getPrimaryKeyAssignment_4_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__2__Impl"


    // $ANTLR start "rule__Table__Group_4__3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1107:1: rule__Table__Group_4__3 : rule__Table__Group_4__3__Impl ;
    public final void rule__Table__Group_4__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1111:1: ( rule__Table__Group_4__3__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1112:2: rule__Table__Group_4__3__Impl
            {
            pushFollow(FOLLOW_rule__Table__Group_4__3__Impl_in_rule__Table__Group_4__32220);
            rule__Table__Group_4__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__3"


    // $ANTLR start "rule__Table__Group_4__3__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1118:1: rule__Table__Group_4__3__Impl : ( ')' ) ;
    public final void rule__Table__Group_4__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1122:1: ( ( ')' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1123:1: ( ')' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1123:1: ( ')' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1124:1: ')'
            {
             before(grammarAccess.getTableAccess().getRightParenthesisKeyword_4_3()); 
            match(input,20,FOLLOW_20_in_rule__Table__Group_4__3__Impl2248); 
             after(grammarAccess.getTableAccess().getRightParenthesisKeyword_4_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__Group_4__3__Impl"


    // $ANTLR start "rule__TableColumn__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1145:1: rule__TableColumn__Group__0 : rule__TableColumn__Group__0__Impl rule__TableColumn__Group__1 ;
    public final void rule__TableColumn__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1149:1: ( rule__TableColumn__Group__0__Impl rule__TableColumn__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1150:2: rule__TableColumn__Group__0__Impl rule__TableColumn__Group__1
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__0__Impl_in_rule__TableColumn__Group__02287);
            rule__TableColumn__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TableColumn__Group__1_in_rule__TableColumn__Group__02290);
            rule__TableColumn__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__0"


    // $ANTLR start "rule__TableColumn__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1157:1: rule__TableColumn__Group__0__Impl : ( 'column' ) ;
    public final void rule__TableColumn__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1161:1: ( ( 'column' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1162:1: ( 'column' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1162:1: ( 'column' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1163:1: 'column'
            {
             before(grammarAccess.getTableColumnAccess().getColumnKeyword_0()); 
            match(input,21,FOLLOW_21_in_rule__TableColumn__Group__0__Impl2318); 
             after(grammarAccess.getTableColumnAccess().getColumnKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__0__Impl"


    // $ANTLR start "rule__TableColumn__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1176:1: rule__TableColumn__Group__1 : rule__TableColumn__Group__1__Impl rule__TableColumn__Group__2 ;
    public final void rule__TableColumn__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1180:1: ( rule__TableColumn__Group__1__Impl rule__TableColumn__Group__2 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1181:2: rule__TableColumn__Group__1__Impl rule__TableColumn__Group__2
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__1__Impl_in_rule__TableColumn__Group__12349);
            rule__TableColumn__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TableColumn__Group__2_in_rule__TableColumn__Group__12352);
            rule__TableColumn__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__1"


    // $ANTLR start "rule__TableColumn__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1188:1: rule__TableColumn__Group__1__Impl : ( ( rule__TableColumn__NameAssignment_1 ) ) ;
    public final void rule__TableColumn__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1192:1: ( ( ( rule__TableColumn__NameAssignment_1 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1193:1: ( ( rule__TableColumn__NameAssignment_1 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1193:1: ( ( rule__TableColumn__NameAssignment_1 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1194:1: ( rule__TableColumn__NameAssignment_1 )
            {
             before(grammarAccess.getTableColumnAccess().getNameAssignment_1()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1195:1: ( rule__TableColumn__NameAssignment_1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1195:2: rule__TableColumn__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__TableColumn__NameAssignment_1_in_rule__TableColumn__Group__1__Impl2379);
            rule__TableColumn__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getTableColumnAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__1__Impl"


    // $ANTLR start "rule__TableColumn__Group__2"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1205:1: rule__TableColumn__Group__2 : rule__TableColumn__Group__2__Impl rule__TableColumn__Group__3 ;
    public final void rule__TableColumn__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1209:1: ( rule__TableColumn__Group__2__Impl rule__TableColumn__Group__3 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1210:2: rule__TableColumn__Group__2__Impl rule__TableColumn__Group__3
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__2__Impl_in_rule__TableColumn__Group__22409);
            rule__TableColumn__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TableColumn__Group__3_in_rule__TableColumn__Group__22412);
            rule__TableColumn__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__2"


    // $ANTLR start "rule__TableColumn__Group__2__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1217:1: rule__TableColumn__Group__2__Impl : ( ':' ) ;
    public final void rule__TableColumn__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1221:1: ( ( ':' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1222:1: ( ':' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1222:1: ( ':' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1223:1: ':'
            {
             before(grammarAccess.getTableColumnAccess().getColonKeyword_2()); 
            match(input,22,FOLLOW_22_in_rule__TableColumn__Group__2__Impl2440); 
             after(grammarAccess.getTableColumnAccess().getColonKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__2__Impl"


    // $ANTLR start "rule__TableColumn__Group__3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1236:1: rule__TableColumn__Group__3 : rule__TableColumn__Group__3__Impl rule__TableColumn__Group__4 ;
    public final void rule__TableColumn__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1240:1: ( rule__TableColumn__Group__3__Impl rule__TableColumn__Group__4 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1241:2: rule__TableColumn__Group__3__Impl rule__TableColumn__Group__4
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__3__Impl_in_rule__TableColumn__Group__32471);
            rule__TableColumn__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TableColumn__Group__4_in_rule__TableColumn__Group__32474);
            rule__TableColumn__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__3"


    // $ANTLR start "rule__TableColumn__Group__3__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1248:1: rule__TableColumn__Group__3__Impl : ( 'type' ) ;
    public final void rule__TableColumn__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1252:1: ( ( 'type' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1253:1: ( 'type' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1253:1: ( 'type' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1254:1: 'type'
            {
             before(grammarAccess.getTableColumnAccess().getTypeKeyword_3()); 
            match(input,23,FOLLOW_23_in_rule__TableColumn__Group__3__Impl2502); 
             after(grammarAccess.getTableColumnAccess().getTypeKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__3__Impl"


    // $ANTLR start "rule__TableColumn__Group__4"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1267:1: rule__TableColumn__Group__4 : rule__TableColumn__Group__4__Impl rule__TableColumn__Group__5 ;
    public final void rule__TableColumn__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1271:1: ( rule__TableColumn__Group__4__Impl rule__TableColumn__Group__5 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1272:2: rule__TableColumn__Group__4__Impl rule__TableColumn__Group__5
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__4__Impl_in_rule__TableColumn__Group__42533);
            rule__TableColumn__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TableColumn__Group__5_in_rule__TableColumn__Group__42536);
            rule__TableColumn__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__4"


    // $ANTLR start "rule__TableColumn__Group__4__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1279:1: rule__TableColumn__Group__4__Impl : ( ( rule__TableColumn__TypeAssignment_4 ) ) ;
    public final void rule__TableColumn__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1283:1: ( ( ( rule__TableColumn__TypeAssignment_4 ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1284:1: ( ( rule__TableColumn__TypeAssignment_4 ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1284:1: ( ( rule__TableColumn__TypeAssignment_4 ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1285:1: ( rule__TableColumn__TypeAssignment_4 )
            {
             before(grammarAccess.getTableColumnAccess().getTypeAssignment_4()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1286:1: ( rule__TableColumn__TypeAssignment_4 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1286:2: rule__TableColumn__TypeAssignment_4
            {
            pushFollow(FOLLOW_rule__TableColumn__TypeAssignment_4_in_rule__TableColumn__Group__4__Impl2563);
            rule__TableColumn__TypeAssignment_4();

            state._fsp--;


            }

             after(grammarAccess.getTableColumnAccess().getTypeAssignment_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__4__Impl"


    // $ANTLR start "rule__TableColumn__Group__5"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1296:1: rule__TableColumn__Group__5 : rule__TableColumn__Group__5__Impl ;
    public final void rule__TableColumn__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1300:1: ( rule__TableColumn__Group__5__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1301:2: rule__TableColumn__Group__5__Impl
            {
            pushFollow(FOLLOW_rule__TableColumn__Group__5__Impl_in_rule__TableColumn__Group__52593);
            rule__TableColumn__Group__5__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__5"


    // $ANTLR start "rule__TableColumn__Group__5__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1307:1: rule__TableColumn__Group__5__Impl : ( ( rule__TableColumn__AdditionalFeaturesAssignment_5 )* ) ;
    public final void rule__TableColumn__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1311:1: ( ( ( rule__TableColumn__AdditionalFeaturesAssignment_5 )* ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1312:1: ( ( rule__TableColumn__AdditionalFeaturesAssignment_5 )* )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1312:1: ( ( rule__TableColumn__AdditionalFeaturesAssignment_5 )* )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1313:1: ( rule__TableColumn__AdditionalFeaturesAssignment_5 )*
            {
             before(grammarAccess.getTableColumnAccess().getAdditionalFeaturesAssignment_5()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1314:1: ( rule__TableColumn__AdditionalFeaturesAssignment_5 )*
            loop6:
            do {
                int alt6=2;
                int LA6_0 = input.LA(1);

                if ( (LA6_0==RULE_STRING) ) {
                    alt6=1;
                }


                switch (alt6) {
            	case 1 :
            	    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1314:2: rule__TableColumn__AdditionalFeaturesAssignment_5
            	    {
            	    pushFollow(FOLLOW_rule__TableColumn__AdditionalFeaturesAssignment_5_in_rule__TableColumn__Group__5__Impl2620);
            	    rule__TableColumn__AdditionalFeaturesAssignment_5();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop6;
                }
            } while (true);

             after(grammarAccess.getTableColumnAccess().getAdditionalFeaturesAssignment_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__Group__5__Impl"


    // $ANTLR start "rule__IntegerDataType__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1336:1: rule__IntegerDataType__Group__0 : rule__IntegerDataType__Group__0__Impl rule__IntegerDataType__Group__1 ;
    public final void rule__IntegerDataType__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1340:1: ( rule__IntegerDataType__Group__0__Impl rule__IntegerDataType__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1341:2: rule__IntegerDataType__Group__0__Impl rule__IntegerDataType__Group__1
            {
            pushFollow(FOLLOW_rule__IntegerDataType__Group__0__Impl_in_rule__IntegerDataType__Group__02663);
            rule__IntegerDataType__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__IntegerDataType__Group__1_in_rule__IntegerDataType__Group__02666);
            rule__IntegerDataType__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntegerDataType__Group__0"


    // $ANTLR start "rule__IntegerDataType__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1348:1: rule__IntegerDataType__Group__0__Impl : ( () ) ;
    public final void rule__IntegerDataType__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1352:1: ( ( () ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1353:1: ( () )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1353:1: ( () )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1354:1: ()
            {
             before(grammarAccess.getIntegerDataTypeAccess().getIntegerDataTypeAction_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1355:1: ()
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1357:1: 
            {
            }

             after(grammarAccess.getIntegerDataTypeAccess().getIntegerDataTypeAction_0()); 

            }


            }

        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntegerDataType__Group__0__Impl"


    // $ANTLR start "rule__IntegerDataType__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1367:1: rule__IntegerDataType__Group__1 : rule__IntegerDataType__Group__1__Impl ;
    public final void rule__IntegerDataType__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1371:1: ( rule__IntegerDataType__Group__1__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1372:2: rule__IntegerDataType__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__IntegerDataType__Group__1__Impl_in_rule__IntegerDataType__Group__12724);
            rule__IntegerDataType__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntegerDataType__Group__1"


    // $ANTLR start "rule__IntegerDataType__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1378:1: rule__IntegerDataType__Group__1__Impl : ( 'integer' ) ;
    public final void rule__IntegerDataType__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1382:1: ( ( 'integer' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1383:1: ( 'integer' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1383:1: ( 'integer' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1384:1: 'integer'
            {
             before(grammarAccess.getIntegerDataTypeAccess().getIntegerKeyword_1()); 
            match(input,24,FOLLOW_24_in_rule__IntegerDataType__Group__1__Impl2752); 
             after(grammarAccess.getIntegerDataTypeAccess().getIntegerKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntegerDataType__Group__1__Impl"


    // $ANTLR start "rule__RealDataType__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1401:1: rule__RealDataType__Group__0 : rule__RealDataType__Group__0__Impl rule__RealDataType__Group__1 ;
    public final void rule__RealDataType__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1405:1: ( rule__RealDataType__Group__0__Impl rule__RealDataType__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1406:2: rule__RealDataType__Group__0__Impl rule__RealDataType__Group__1
            {
            pushFollow(FOLLOW_rule__RealDataType__Group__0__Impl_in_rule__RealDataType__Group__02787);
            rule__RealDataType__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RealDataType__Group__1_in_rule__RealDataType__Group__02790);
            rule__RealDataType__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDataType__Group__0"


    // $ANTLR start "rule__RealDataType__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1413:1: rule__RealDataType__Group__0__Impl : ( () ) ;
    public final void rule__RealDataType__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1417:1: ( ( () ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1418:1: ( () )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1418:1: ( () )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1419:1: ()
            {
             before(grammarAccess.getRealDataTypeAccess().getRealDataTypeAction_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1420:1: ()
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1422:1: 
            {
            }

             after(grammarAccess.getRealDataTypeAccess().getRealDataTypeAction_0()); 

            }


            }

        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDataType__Group__0__Impl"


    // $ANTLR start "rule__RealDataType__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1432:1: rule__RealDataType__Group__1 : rule__RealDataType__Group__1__Impl ;
    public final void rule__RealDataType__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1436:1: ( rule__RealDataType__Group__1__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1437:2: rule__RealDataType__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__RealDataType__Group__1__Impl_in_rule__RealDataType__Group__12848);
            rule__RealDataType__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDataType__Group__1"


    // $ANTLR start "rule__RealDataType__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1443:1: rule__RealDataType__Group__1__Impl : ( 'real' ) ;
    public final void rule__RealDataType__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1447:1: ( ( 'real' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1448:1: ( 'real' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1448:1: ( 'real' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1449:1: 'real'
            {
             before(grammarAccess.getRealDataTypeAccess().getRealKeyword_1()); 
            match(input,25,FOLLOW_25_in_rule__RealDataType__Group__1__Impl2876); 
             after(grammarAccess.getRealDataTypeAccess().getRealKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDataType__Group__1__Impl"


    // $ANTLR start "rule__TextDataType__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1466:1: rule__TextDataType__Group__0 : rule__TextDataType__Group__0__Impl rule__TextDataType__Group__1 ;
    public final void rule__TextDataType__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1470:1: ( rule__TextDataType__Group__0__Impl rule__TextDataType__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1471:2: rule__TextDataType__Group__0__Impl rule__TextDataType__Group__1
            {
            pushFollow(FOLLOW_rule__TextDataType__Group__0__Impl_in_rule__TextDataType__Group__02911);
            rule__TextDataType__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__TextDataType__Group__1_in_rule__TextDataType__Group__02914);
            rule__TextDataType__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TextDataType__Group__0"


    // $ANTLR start "rule__TextDataType__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1478:1: rule__TextDataType__Group__0__Impl : ( () ) ;
    public final void rule__TextDataType__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1482:1: ( ( () ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1483:1: ( () )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1483:1: ( () )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1484:1: ()
            {
             before(grammarAccess.getTextDataTypeAccess().getTextDataTypeAction_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1485:1: ()
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1487:1: 
            {
            }

             after(grammarAccess.getTextDataTypeAccess().getTextDataTypeAction_0()); 

            }


            }

        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TextDataType__Group__0__Impl"


    // $ANTLR start "rule__TextDataType__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1497:1: rule__TextDataType__Group__1 : rule__TextDataType__Group__1__Impl ;
    public final void rule__TextDataType__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1501:1: ( rule__TextDataType__Group__1__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1502:2: rule__TextDataType__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__TextDataType__Group__1__Impl_in_rule__TextDataType__Group__12972);
            rule__TextDataType__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TextDataType__Group__1"


    // $ANTLR start "rule__TextDataType__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1508:1: rule__TextDataType__Group__1__Impl : ( 'text' ) ;
    public final void rule__TextDataType__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1512:1: ( ( 'text' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1513:1: ( 'text' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1513:1: ( 'text' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1514:1: 'text'
            {
             before(grammarAccess.getTextDataTypeAccess().getTextKeyword_1()); 
            match(input,26,FOLLOW_26_in_rule__TextDataType__Group__1__Impl3000); 
             after(grammarAccess.getTextDataTypeAccess().getTextKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TextDataType__Group__1__Impl"


    // $ANTLR start "rule__BlobDataType__Group__0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1531:1: rule__BlobDataType__Group__0 : rule__BlobDataType__Group__0__Impl rule__BlobDataType__Group__1 ;
    public final void rule__BlobDataType__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1535:1: ( rule__BlobDataType__Group__0__Impl rule__BlobDataType__Group__1 )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1536:2: rule__BlobDataType__Group__0__Impl rule__BlobDataType__Group__1
            {
            pushFollow(FOLLOW_rule__BlobDataType__Group__0__Impl_in_rule__BlobDataType__Group__03035);
            rule__BlobDataType__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__BlobDataType__Group__1_in_rule__BlobDataType__Group__03038);
            rule__BlobDataType__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__BlobDataType__Group__0"


    // $ANTLR start "rule__BlobDataType__Group__0__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1543:1: rule__BlobDataType__Group__0__Impl : ( () ) ;
    public final void rule__BlobDataType__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1547:1: ( ( () ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1548:1: ( () )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1548:1: ( () )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1549:1: ()
            {
             before(grammarAccess.getBlobDataTypeAccess().getBlobDataTypeAction_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1550:1: ()
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1552:1: 
            {
            }

             after(grammarAccess.getBlobDataTypeAccess().getBlobDataTypeAction_0()); 

            }


            }

        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__BlobDataType__Group__0__Impl"


    // $ANTLR start "rule__BlobDataType__Group__1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1562:1: rule__BlobDataType__Group__1 : rule__BlobDataType__Group__1__Impl ;
    public final void rule__BlobDataType__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1566:1: ( rule__BlobDataType__Group__1__Impl )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1567:2: rule__BlobDataType__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__BlobDataType__Group__1__Impl_in_rule__BlobDataType__Group__13096);
            rule__BlobDataType__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__BlobDataType__Group__1"


    // $ANTLR start "rule__BlobDataType__Group__1__Impl"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1573:1: rule__BlobDataType__Group__1__Impl : ( 'blob' ) ;
    public final void rule__BlobDataType__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1577:1: ( ( 'blob' ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1578:1: ( 'blob' )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1578:1: ( 'blob' )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1579:1: 'blob'
            {
             before(grammarAccess.getBlobDataTypeAccess().getBlobKeyword_1()); 
            match(input,27,FOLLOW_27_in_rule__BlobDataType__Group__1__Impl3124); 
             after(grammarAccess.getBlobDataTypeAccess().getBlobKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__BlobDataType__Group__1__Impl"


    // $ANTLR start "rule__ContentProvider__ConfigAssignment_0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1597:1: rule__ContentProvider__ConfigAssignment_0 : ( ruleConfiguration ) ;
    public final void rule__ContentProvider__ConfigAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1601:1: ( ( ruleConfiguration ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1602:1: ( ruleConfiguration )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1602:1: ( ruleConfiguration )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1603:1: ruleConfiguration
            {
             before(grammarAccess.getContentProviderAccess().getConfigConfigurationParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleConfiguration_in_rule__ContentProvider__ConfigAssignment_03164);
            ruleConfiguration();

            state._fsp--;

             after(grammarAccess.getContentProviderAccess().getConfigConfigurationParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__ConfigAssignment_0"


    // $ANTLR start "rule__ContentProvider__TablesAssignment_1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1612:1: rule__ContentProvider__TablesAssignment_1 : ( ruleTable ) ;
    public final void rule__ContentProvider__TablesAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1616:1: ( ( ruleTable ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1617:1: ( ruleTable )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1617:1: ( ruleTable )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1618:1: ruleTable
            {
             before(grammarAccess.getContentProviderAccess().getTablesTableParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleTable_in_rule__ContentProvider__TablesAssignment_13195);
            ruleTable();

            state._fsp--;

             after(grammarAccess.getContentProviderAccess().getTablesTableParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ContentProvider__TablesAssignment_1"


    // $ANTLR start "rule__Configuration__AuthorityAssignment_3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1627:1: rule__Configuration__AuthorityAssignment_3 : ( RULE_STRING ) ;
    public final void rule__Configuration__AuthorityAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1631:1: ( ( RULE_STRING ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1632:1: ( RULE_STRING )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1632:1: ( RULE_STRING )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1633:1: RULE_STRING
            {
             before(grammarAccess.getConfigurationAccess().getAuthoritySTRINGTerminalRuleCall_3_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Configuration__AuthorityAssignment_33226); 
             after(grammarAccess.getConfigurationAccess().getAuthoritySTRINGTerminalRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__AuthorityAssignment_3"


    // $ANTLR start "rule__Configuration__BasePathAssignment_5"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1642:1: rule__Configuration__BasePathAssignment_5 : ( RULE_STRING ) ;
    public final void rule__Configuration__BasePathAssignment_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1646:1: ( ( RULE_STRING ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1647:1: ( RULE_STRING )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1647:1: ( RULE_STRING )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1648:1: RULE_STRING
            {
             before(grammarAccess.getConfigurationAccess().getBasePathSTRINGTerminalRuleCall_5_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Configuration__BasePathAssignment_53257); 
             after(grammarAccess.getConfigurationAccess().getBasePathSTRINGTerminalRuleCall_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__BasePathAssignment_5"


    // $ANTLR start "rule__Configuration__PackageNameAssignment_7"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1657:1: rule__Configuration__PackageNameAssignment_7 : ( RULE_STRING ) ;
    public final void rule__Configuration__PackageNameAssignment_7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1661:1: ( ( RULE_STRING ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1662:1: ( RULE_STRING )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1662:1: ( RULE_STRING )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1663:1: RULE_STRING
            {
             before(grammarAccess.getConfigurationAccess().getPackageNameSTRINGTerminalRuleCall_7_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Configuration__PackageNameAssignment_73288); 
             after(grammarAccess.getConfigurationAccess().getPackageNameSTRINGTerminalRuleCall_7_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Configuration__PackageNameAssignment_7"


    // $ANTLR start "rule__Table__NameAssignment_1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1672:1: rule__Table__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Table__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1676:1: ( ( RULE_ID ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1677:1: ( RULE_ID )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1677:1: ( RULE_ID )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1678:1: RULE_ID
            {
             before(grammarAccess.getTableAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Table__NameAssignment_13319); 
             after(grammarAccess.getTableAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__NameAssignment_1"


    // $ANTLR start "rule__Table__ColumnsAssignment_3"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1687:1: rule__Table__ColumnsAssignment_3 : ( ruleTableColumn ) ;
    public final void rule__Table__ColumnsAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1691:1: ( ( ruleTableColumn ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1692:1: ( ruleTableColumn )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1692:1: ( ruleTableColumn )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1693:1: ruleTableColumn
            {
             before(grammarAccess.getTableAccess().getColumnsTableColumnParserRuleCall_3_0()); 
            pushFollow(FOLLOW_ruleTableColumn_in_rule__Table__ColumnsAssignment_33350);
            ruleTableColumn();

            state._fsp--;

             after(grammarAccess.getTableAccess().getColumnsTableColumnParserRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__ColumnsAssignment_3"


    // $ANTLR start "rule__Table__PrimaryKeyAssignment_4_2"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1702:1: rule__Table__PrimaryKeyAssignment_4_2 : ( RULE_STRING ) ;
    public final void rule__Table__PrimaryKeyAssignment_4_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1706:1: ( ( RULE_STRING ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1707:1: ( RULE_STRING )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1707:1: ( RULE_STRING )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1708:1: RULE_STRING
            {
             before(grammarAccess.getTableAccess().getPrimaryKeySTRINGTerminalRuleCall_4_2_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Table__PrimaryKeyAssignment_4_23381); 
             after(grammarAccess.getTableAccess().getPrimaryKeySTRINGTerminalRuleCall_4_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Table__PrimaryKeyAssignment_4_2"


    // $ANTLR start "rule__TableColumn__NameAssignment_1"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1717:1: rule__TableColumn__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__TableColumn__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1721:1: ( ( RULE_ID ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1722:1: ( RULE_ID )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1722:1: ( RULE_ID )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1723:1: RULE_ID
            {
             before(grammarAccess.getTableColumnAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__TableColumn__NameAssignment_13412); 
             after(grammarAccess.getTableColumnAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__NameAssignment_1"


    // $ANTLR start "rule__TableColumn__TypeAssignment_4"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1732:1: rule__TableColumn__TypeAssignment_4 : ( ruleColumnType ) ;
    public final void rule__TableColumn__TypeAssignment_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1736:1: ( ( ruleColumnType ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1737:1: ( ruleColumnType )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1737:1: ( ruleColumnType )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1738:1: ruleColumnType
            {
             before(grammarAccess.getTableColumnAccess().getTypeColumnTypeParserRuleCall_4_0()); 
            pushFollow(FOLLOW_ruleColumnType_in_rule__TableColumn__TypeAssignment_43443);
            ruleColumnType();

            state._fsp--;

             after(grammarAccess.getTableColumnAccess().getTypeColumnTypeParserRuleCall_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__TypeAssignment_4"


    // $ANTLR start "rule__TableColumn__AdditionalFeaturesAssignment_5"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1747:1: rule__TableColumn__AdditionalFeaturesAssignment_5 : ( ruleAdditionalFeature ) ;
    public final void rule__TableColumn__AdditionalFeaturesAssignment_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1751:1: ( ( ruleAdditionalFeature ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1752:1: ( ruleAdditionalFeature )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1752:1: ( ruleAdditionalFeature )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1753:1: ruleAdditionalFeature
            {
             before(grammarAccess.getTableColumnAccess().getAdditionalFeaturesAdditionalFeatureParserRuleCall_5_0()); 
            pushFollow(FOLLOW_ruleAdditionalFeature_in_rule__TableColumn__AdditionalFeaturesAssignment_53474);
            ruleAdditionalFeature();

            state._fsp--;

             after(grammarAccess.getTableColumnAccess().getAdditionalFeaturesAdditionalFeatureParserRuleCall_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableColumn__AdditionalFeaturesAssignment_5"


    // $ANTLR start "rule__AdditionalFeature__NameAssignment"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1762:1: rule__AdditionalFeature__NameAssignment : ( RULE_STRING ) ;
    public final void rule__AdditionalFeature__NameAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1766:1: ( ( RULE_STRING ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1767:1: ( RULE_STRING )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1767:1: ( RULE_STRING )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1768:1: RULE_STRING
            {
             before(grammarAccess.getAdditionalFeatureAccess().getNameSTRINGTerminalRuleCall_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__AdditionalFeature__NameAssignment3505); 
             after(grammarAccess.getAdditionalFeatureAccess().getNameSTRINGTerminalRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__AdditionalFeature__NameAssignment"


    // $ANTLR start "rule__ColumnType__TypeAssignment_0"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1777:1: rule__ColumnType__TypeAssignment_0 : ( ruleDataType ) ;
    public final void rule__ColumnType__TypeAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1781:1: ( ( ruleDataType ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1782:1: ( ruleDataType )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1782:1: ( ruleDataType )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1783:1: ruleDataType
            {
             before(grammarAccess.getColumnTypeAccess().getTypeDataTypeParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleDataType_in_rule__ColumnType__TypeAssignment_03536);
            ruleDataType();

            state._fsp--;

             after(grammarAccess.getColumnTypeAccess().getTypeDataTypeParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ColumnType__TypeAssignment_0"


    // $ANTLR start "rule__TableWrap__TableAssignment"
    // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1792:1: rule__TableWrap__TableAssignment : ( ( RULE_ID ) ) ;
    public final void rule__TableWrap__TableAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1796:1: ( ( ( RULE_ID ) ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1797:1: ( ( RULE_ID ) )
            {
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1797:1: ( ( RULE_ID ) )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1798:1: ( RULE_ID )
            {
             before(grammarAccess.getTableWrapAccess().getTableTableCrossReference_0()); 
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1799:1: ( RULE_ID )
            // ../co.edu.unal.research.contentprovider.ui/src-gen/co/edu/unal/research/contentprovider/ui/contentassist/antlr/internal/InternalContentProviderDsl.g:1800:1: RULE_ID
            {
             before(grammarAccess.getTableWrapAccess().getTableTableIDTerminalRuleCall_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__TableWrap__TableAssignment3571); 
             after(grammarAccess.getTableWrapAccess().getTableTableIDTerminalRuleCall_0_1()); 

            }

             after(grammarAccess.getTableWrapAccess().getTableTableCrossReference_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__TableWrap__TableAssignment"

    // Delegated rules


 

    public static final BitSet FOLLOW_ruleContentProvider_in_entryRuleContentProvider61 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleContentProvider68 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ContentProvider__Group__0_in_ruleContentProvider94 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleConfiguration_in_entryRuleConfiguration121 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleConfiguration128 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__0_in_ruleConfiguration154 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTable_in_entryRuleTable181 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleTable188 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__0_in_ruleTable214 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTableColumn_in_entryRuleTableColumn241 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleTableColumn248 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__0_in_ruleTableColumn274 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAdditionalFeature_in_entryRuleAdditionalFeature301 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAdditionalFeature308 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__AdditionalFeature__NameAssignment_in_ruleAdditionalFeature334 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleColumnType_in_entryRuleColumnType361 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleColumnType368 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ColumnType__Alternatives_in_ruleColumnType394 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTableWrap_in_entryRuleTableWrap421 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleTableWrap428 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableWrap__TableAssignment_in_ruleTableWrap454 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType481 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDataType488 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__DataType__Alternatives_in_ruleDataType514 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIntegerDataType_in_entryRuleIntegerDataType541 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleIntegerDataType548 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntegerDataType__Group__0_in_ruleIntegerDataType574 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRealDataType_in_entryRuleRealDataType601 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleRealDataType608 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDataType__Group__0_in_ruleRealDataType634 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTextDataType_in_entryRuleTextDataType661 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleTextDataType668 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TextDataType__Group__0_in_ruleTextDataType694 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleBlobDataType_in_entryRuleBlobDataType721 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleBlobDataType728 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__BlobDataType__Group__0_in_ruleBlobDataType754 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ColumnType__TypeAssignment_0_in_rule__ColumnType__Alternatives790 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTableWrap_in_rule__ColumnType__Alternatives808 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIntegerDataType_in_rule__DataType__Alternatives840 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRealDataType_in_rule__DataType__Alternatives857 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTextDataType_in_rule__DataType__Alternatives874 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleBlobDataType_in_rule__DataType__Alternatives891 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTable_in_rule__DataType__Alternatives908 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ContentProvider__Group__0__Impl_in_rule__ContentProvider__Group__0938 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_rule__ContentProvider__Group__1_in_rule__ContentProvider__Group__0941 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ContentProvider__ConfigAssignment_0_in_rule__ContentProvider__Group__0__Impl968 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ContentProvider__Group__1__Impl_in_rule__ContentProvider__Group__1998 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ContentProvider__TablesAssignment_1_in_rule__ContentProvider__Group__1__Impl1027 = new BitSet(new long[]{0x0000000000020002L});
    public static final BitSet FOLLOW_rule__ContentProvider__TablesAssignment_1_in_rule__ContentProvider__Group__1__Impl1039 = new BitSet(new long[]{0x0000000000020002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__0__Impl_in_rule__Configuration__Group__01076 = new BitSet(new long[]{0x0000000000001000L});
    public static final BitSet FOLLOW_rule__Configuration__Group__1_in_rule__Configuration__Group__01079 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_rule__Configuration__Group__0__Impl1107 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__1__Impl_in_rule__Configuration__Group__11138 = new BitSet(new long[]{0x0000000000002000L});
    public static final BitSet FOLLOW_rule__Configuration__Group__2_in_rule__Configuration__Group__11141 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_rule__Configuration__Group__1__Impl1169 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__2__Impl_in_rule__Configuration__Group__21200 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Configuration__Group__3_in_rule__Configuration__Group__21203 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_rule__Configuration__Group__2__Impl1231 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__3__Impl_in_rule__Configuration__Group__31262 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__Configuration__Group__4_in_rule__Configuration__Group__31265 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__AuthorityAssignment_3_in_rule__Configuration__Group__3__Impl1292 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__4__Impl_in_rule__Configuration__Group__41322 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Configuration__Group__5_in_rule__Configuration__Group__41325 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Configuration__Group__4__Impl1353 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__5__Impl_in_rule__Configuration__Group__51384 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Configuration__Group__6_in_rule__Configuration__Group__51387 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__BasePathAssignment_5_in_rule__Configuration__Group__5__Impl1414 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__6__Impl_in_rule__Configuration__Group__61444 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Configuration__Group__7_in_rule__Configuration__Group__61447 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Configuration__Group__6__Impl1475 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__7__Impl_in_rule__Configuration__Group__71506 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Configuration__Group__8_in_rule__Configuration__Group__71509 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__PackageNameAssignment_7_in_rule__Configuration__Group__7__Impl1536 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Configuration__Group__8__Impl_in_rule__Configuration__Group__81566 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Configuration__Group__8__Impl1594 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__0__Impl_in_rule__Table__Group__01643 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Table__Group__1_in_rule__Table__Group__01646 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__Table__Group__0__Impl1674 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__1__Impl_in_rule__Table__Group__11705 = new BitSet(new long[]{0x0000000000001000L});
    public static final BitSet FOLLOW_rule__Table__Group__2_in_rule__Table__Group__11708 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__NameAssignment_1_in_rule__Table__Group__1__Impl1735 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__2__Impl_in_rule__Table__Group__21765 = new BitSet(new long[]{0x0000000000200000L});
    public static final BitSet FOLLOW_rule__Table__Group__3_in_rule__Table__Group__21768 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_rule__Table__Group__2__Impl1796 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__3__Impl_in_rule__Table__Group__31827 = new BitSet(new long[]{0x0000000000050000L});
    public static final BitSet FOLLOW_rule__Table__Group__4_in_rule__Table__Group__31830 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__ColumnsAssignment_3_in_rule__Table__Group__3__Impl1859 = new BitSet(new long[]{0x0000000000200002L});
    public static final BitSet FOLLOW_rule__Table__ColumnsAssignment_3_in_rule__Table__Group__3__Impl1871 = new BitSet(new long[]{0x0000000000200002L});
    public static final BitSet FOLLOW_rule__Table__Group__4__Impl_in_rule__Table__Group__41904 = new BitSet(new long[]{0x0000000000050000L});
    public static final BitSet FOLLOW_rule__Table__Group__5_in_rule__Table__Group__41907 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group_4__0_in_rule__Table__Group__4__Impl1934 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group__5__Impl_in_rule__Table__Group__51965 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Table__Group__5__Impl1993 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group_4__0__Impl_in_rule__Table__Group_4__02036 = new BitSet(new long[]{0x0000000000080000L});
    public static final BitSet FOLLOW_rule__Table__Group_4__1_in_rule__Table__Group_4__02039 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Table__Group_4__0__Impl2067 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group_4__1__Impl_in_rule__Table__Group_4__12098 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Table__Group_4__2_in_rule__Table__Group_4__12101 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_19_in_rule__Table__Group_4__1__Impl2129 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group_4__2__Impl_in_rule__Table__Group_4__22160 = new BitSet(new long[]{0x0000000000100000L});
    public static final BitSet FOLLOW_rule__Table__Group_4__3_in_rule__Table__Group_4__22163 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__PrimaryKeyAssignment_4_2_in_rule__Table__Group_4__2__Impl2190 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Table__Group_4__3__Impl_in_rule__Table__Group_4__32220 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Table__Group_4__3__Impl2248 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__0__Impl_in_rule__TableColumn__Group__02287 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__1_in_rule__TableColumn__Group__02290 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__TableColumn__Group__0__Impl2318 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__1__Impl_in_rule__TableColumn__Group__12349 = new BitSet(new long[]{0x0000000000400000L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__2_in_rule__TableColumn__Group__12352 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__NameAssignment_1_in_rule__TableColumn__Group__1__Impl2379 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__2__Impl_in_rule__TableColumn__Group__22409 = new BitSet(new long[]{0x0000000000800000L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__3_in_rule__TableColumn__Group__22412 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__TableColumn__Group__2__Impl2440 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__3__Impl_in_rule__TableColumn__Group__32471 = new BitSet(new long[]{0x000000000F020020L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__4_in_rule__TableColumn__Group__32474 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_23_in_rule__TableColumn__Group__3__Impl2502 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__4__Impl_in_rule__TableColumn__Group__42533 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__5_in_rule__TableColumn__Group__42536 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__TypeAssignment_4_in_rule__TableColumn__Group__4__Impl2563 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__Group__5__Impl_in_rule__TableColumn__Group__52593 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TableColumn__AdditionalFeaturesAssignment_5_in_rule__TableColumn__Group__5__Impl2620 = new BitSet(new long[]{0x0000000000000012L});
    public static final BitSet FOLLOW_rule__IntegerDataType__Group__0__Impl_in_rule__IntegerDataType__Group__02663 = new BitSet(new long[]{0x0000000001000000L});
    public static final BitSet FOLLOW_rule__IntegerDataType__Group__1_in_rule__IntegerDataType__Group__02666 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntegerDataType__Group__1__Impl_in_rule__IntegerDataType__Group__12724 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_24_in_rule__IntegerDataType__Group__1__Impl2752 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDataType__Group__0__Impl_in_rule__RealDataType__Group__02787 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_rule__RealDataType__Group__1_in_rule__RealDataType__Group__02790 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDataType__Group__1__Impl_in_rule__RealDataType__Group__12848 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_25_in_rule__RealDataType__Group__1__Impl2876 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TextDataType__Group__0__Impl_in_rule__TextDataType__Group__02911 = new BitSet(new long[]{0x0000000004000000L});
    public static final BitSet FOLLOW_rule__TextDataType__Group__1_in_rule__TextDataType__Group__02914 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__TextDataType__Group__1__Impl_in_rule__TextDataType__Group__12972 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__TextDataType__Group__1__Impl3000 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__BlobDataType__Group__0__Impl_in_rule__BlobDataType__Group__03035 = new BitSet(new long[]{0x0000000008000000L});
    public static final BitSet FOLLOW_rule__BlobDataType__Group__1_in_rule__BlobDataType__Group__03038 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__BlobDataType__Group__1__Impl_in_rule__BlobDataType__Group__13096 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_27_in_rule__BlobDataType__Group__1__Impl3124 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleConfiguration_in_rule__ContentProvider__ConfigAssignment_03164 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTable_in_rule__ContentProvider__TablesAssignment_13195 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Configuration__AuthorityAssignment_33226 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Configuration__BasePathAssignment_53257 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Configuration__PackageNameAssignment_73288 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Table__NameAssignment_13319 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleTableColumn_in_rule__Table__ColumnsAssignment_33350 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Table__PrimaryKeyAssignment_4_23381 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__TableColumn__NameAssignment_13412 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleColumnType_in_rule__TableColumn__TypeAssignment_43443 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAdditionalFeature_in_rule__TableColumn__AdditionalFeaturesAssignment_53474 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__AdditionalFeature__NameAssignment3505 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDataType_in_rule__ColumnType__TypeAssignment_03536 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__TableWrap__TableAssignment3571 = new BitSet(new long[]{0x0000000000000002L});

}